package bard.partnermatchingsystem.service;


import bard.partnermatchingsystem.domain.dto.TeamAddDTO;
import bard.partnermatchingsystem.domain.dto.TeamJoinDTO;
import bard.partnermatchingsystem.domain.dto.TeamQuitDTO;
import bard.partnermatchingsystem.domain.dto.TeamUpdateamDTO;
import bard.partnermatchingsystem.domain.po.Team;
import bard.partnermatchingsystem.domain.po.User;
import bard.partnermatchingsystem.domain.vo.UserTeamVO;
import com.baomidou.mybatisplus.extension.service.IService;

import javax.servlet.http.HttpServletRequest;
import java.util.List;

/**
* @author Administrator
* @description 针对表【team(队伍)】的数据库操作Service
* @createDate 2024-08-04 17:03:41
*/
public interface TeamService extends IService<Team> {

    Long addTeam(TeamAddDTO teamAddDTO, User loginUser);

    List<UserTeamVO> listTeams(String searchText, int status, Boolean isAdmin, User loginUser);

    boolean updateTeam(TeamUpdateamDTO teamUpdateamDTO, User loginUser);

    Boolean joinTeam(TeamJoinDTO teamJoinDTO, User loginUser);

    Boolean quitTeam(TeamQuitDTO teamquitDTO, User loginUser);

    boolean removeTeam(Long teamId, User loginUser);

    List<UserTeamVO> getMycreateTeams(String searchText, User loginUser);

    List<UserTeamVO> getMyjoinTeams(String searchText, User loginUser);
}
